Part Number Hot Search : 
SMAJ60CA 127150FA NJU26120 NJU26120 AMS811T 2N600 SYSTEM MAJ110
Product Description
Full Text Search
 

To Download RM7000A-300T Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released rm7000a rm7000a ? microprocessor with on- chip secondary cache data sheet proprietary and confidential released issue 2, may 2001
rm7000a ? microprocessor with on-chip secondary cache data sheet released pr o pri e t ary a nd c o nf i de n ti a l to pm c - s i err a , i n c a nd for i t s c us t o m e r s ' int e rn a l u s e 2 document id: pmc-2002227, issue 2 legal information copyright ? 2001 pmc-sierra, inc. the information is proprietary and confidential to pmc-sierra, inc., and for its customers? internal use. in any event, you cannot reproduce any part of this document, in any form, without the express written consent of pmc-sierra, inc. pmc-2002227 (r2) disclaimer none of the information contained in this document constitutes an express or implied warranty by pmc- sierra, inc. as to the sufficiency, fitness or suitability for a particular purpose of any such information or the fitness, or suitability for a particular purpose, merchantability, performance, compatibility with other parts or systems, of any of the products of pmc-sierra, inc., or any portion thereof, referred to in this document. pmc-sierra, inc. expressly disclaims all representations and warranties of any kind regarding the contents or use of the information, including, but not limited to, express and implied warranties of accuracy, completeness, merchantability, fitness for a particular use, or non-infringement. in no event will pmc-sierra, inc. be liable for any direct, indirect, special, incidental or consequential damages, including, but not limited to, lost profits, lost business or lost data resulting from any use of or reliance upon the information, whether or not pmc-sierra, inc. has been advised of the possibility of such damage. trademarks rm7000a and fast packet cache are trademarks of pmc-sierra, inc. patents the technology discussed is protected by one or more of the following patents. u.s. patent numbers 5,953,748, 5,953,748, 5,953,748 relevant patent applications and other patents may also exist. contacting pmc-sierra pmc-sierra, inc. 8 555 b a xt e r p l a c e bu r na b y , bc canada v5a 4v7 tel: (604) 415-6000 fax: (604) 415-6200 document information: document@pmc-sierra.com corporate information: info@pmc-sierra.com technical support: apps@pmc-sierra.com web site: http://www.pmc-sierra.com
rm7000a ? microprocessor with on-chip secondary cache data sheet released pr o pri e t ary a nd c o nf i de n ti a l to pm c - s i err a , i n c a nd for i t s c us t o m e r s ' int e rn a l u s e 3 document id: pmc-2002227, issue 2 revision history issue no. issue date ecn number originator details of change 2 may 2001 3716 k. murray changed pin ac13 syscmd[2] from active low to high. added industrial values to recommended operating instructions added industrial and commercial values to absolute maximum ratings changed timer interrupt enable/disable information in boot time mode stream table added paragraph to interrupt handling section clarification added to system interface parameters additional information added to clock parameter table 1 january 2001 t. chapman applied pmc-sierra template to existing mpd (qed) framemaker document. in the pinout table, changed all references from ip to int section 1, features, changed high- performance system interface, 133 mhz maximum frequency, multiplexed address/ data to 125 mhz. changed qed references to pmc-sierra or mips. updated section 7, recommended operating conditions and section 9 power consumption. added system interface parameter values, section 10.3, for 350 mhz and 400 mhz cpu speeds per data provided by mark scrivener.
rm7000a ? microprocessor with on-chip secondary cache data sheet released pr o pri e t ary a nd c o nf i de n ti a l to pm c - s i err a , i n c a nd for i t s c us t o m e r s ' int e rn a l u s e 4 document id: pmc-2002227, issue 2 document conventions the following conventions are used in this datasheet:  all signal, pin, and bus names described in the text, such as extrqst*, are in boldface typeface.  all bit and field names described in the text, such as interrupt mask , are in an italic-bold typeface.  all instruction names, such as mfhi , are in san serif typeface.
rm7000a ? microprocessor with on-chip secondary cache data sheet released pr o pri e t ary a nd c o nf i de n ti a l to pm c - s i err a , i n c a nd for i t s c us t o m e r s ' int e rn a l u s e 5 document id: pmc-2002227, issue 2 table of contents legal information ............................................................................................................. ..............2 revision history .............................................................................................................................3 document conventions .......................................................................................................... .......4 table of contents . ............................................................................................................. ............ 5 list of figures ............................................................................................................... .................7 list of tables ................................................................................................................ .................8 1 features ..................................................................................................................... .............9 2 block diagram ................................................................................................................ .......10 3 description .................................................................................................................. ..........11 4 hardware overview ...............................................................................................................12 4.1 cpu registers .............................................................................................................1 2 4.2 superscalar dispatch ...................................................................................................12 4.3 pipeline ................................................................................................................... .....13 4.4 i nteger unit ............................................................................................................... ...14 4.5 alu ........................................................................................................................ ......15 4.6 integer multiply/divide ..................................................................................................15 4.7 floating-point coprocessor ..........................................................................................16 4.8 floating-point unit .......................................................................................................1 6 4.9 floating-point general register file ............................................................................17 4.10 system control coprocessor (cp0) .............................................................................18 4.11 system control coprocessor registers .......................................................................18 4.12 virtual to physical address mapping ............................................................................19 4.13 joint tlb ................................................................................................................. .....20 4.14 instruction tlb ........................................................................................................... ..21 4.15 data tlb .................................................................................................................. ....21 4.16 cache memory .............................................................................................................2 1 4.17 instruction cache ......................................................................................................... 22 4.18 data cache ................................................................................................................ ..22 4.19 secondary cache ........................................................................................................24 4.20 secondary caching protocols ......................................................................................24 4.21 tertiary cache ............................................................................................................ .25 4.22 cache locking ............................................................................................................. 26 4.23 cache management .....................................................................................................27 4.24 primary write buffer .....................................................................................................2 7 4.25 system interface .......................................................................................................... 27 4.26 system address/data bus ...........................................................................................28 4.27 system command bus ................................................................................................28 4.28 handshake signals ......................................................................................................29 4.29 system interface operation .........................................................................................29
rm7000a ? microprocessor with on-chip secondary cache data sheet released proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 6 document id: pmc-2002227, issue 2 4.30 data prefetch ............................................................................................................. ..31 4.31 enhanced write modes ................................................................................................32 4.32 external requests ........................................................................................................3 2 4.33 test/breakpoint registers ............................................................................................32 4.34 performance counters .................................................................................................33 4.35 interrupt handling ........................................................................................................ 35 4.36 standby mode .............................................................................................................. 37 4.37 jtag interface ............................................................................................................ .37 4.38 boot-time options .......................................................................................................37 4.39 boot-time modes .........................................................................................................37 5 pin descriptions ............................................................................................................. .......39 6 absolute maximum ratings1 ................................................................................................43 7 recommended operating conditions ...................................................................................44 8 dc electrical characteristics ................................................................................................ .45 9 power consumption ............................................................................................................ ..46 10 ac electrical characteristics ............................................................................................... ..47 10.1 capacitive load deration .............................................................................................47 10.2 clock parameters ........................................................................................................47 10.3 system interface parameters ......................................................................................48 10.4 boot-time interface parameters ..................................................................................48 11 timing diagrams ............................................................................................................. ......49 11.1 clock timing .............................................................................................................. ..49 12 packaging information ....................................................................................................... ...50 13 rm7000a pinout .............................................................................................................. .....51 14 ordering information ........................................................................................................ .....53
rm7000a ? microprocessor with on-chip secondary cache data sheet released proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 7 document id: pmc-2002227, issue 2 list of figures figure 1 block diagram ...................................................................................................... .......10 figure 2 cp0 registers ...................................................................................................... .......12 figure 3 instruction issue paradigm ......................................................................................... .13 figure 4 pipeline ........................................................................................................... .............14 figure 5 cp0 registers ...................................................................................................... .......19 figure 6 kernel mode virtual addressing (32-bit) .....................................................................20 figure 7 tertiary cache hit and miss ........................................................................................ 25 figure 8 typical embedded system block diagram .................................................................28 figure 9 processor block read ............................................................................................... ..30 figure 10 processor block write ............................................................................................. ..31 figure 11 multiple outstanding reads ......................................................................................31 figure 12 clock timing ...................................................................................................... ........49 figure 13 input timing ...................................................................................................... .........49 figure 14 output timing ..................................................................................................... .......49 figure 15 304 tbga drawing .................................................................................................. .50
rm7000a ? microprocessor with on-chip secondary cache data sheet released proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 8 document id: pmc-2002227, issue 2 list of tables table 1 instruction issue rules ............................................................................................. ....12 table 2 dual issue instruction classes .....................................................................................1 3 table 3 alu operations ...................................................................................................... ......15 table 4 integer multiply/divide operations ................................................................................15 table 5 floating point latencies and repeat rates .................................................................17 table 6 cache attributes .................................................................................................... .......26 table 7 cache locking control ............................................................................................... ..27 table 8 penalty cycles ...................................................................................................... ........27 table 9 watch control register .............................................................................................. ..33 table 10 performance counter control .....................................................................................34 table 11 cause register ........................................................................................................ ...36 table 12 interrupt control register ...........................................................................................3 6 table 13 ipllo register ........................................................................................................ ...36 table 14 iplhi register ........................................................................................................ ....36 table 15 interrupt vector spacing ........................................................................................... ..37 table 16 boot time mode stream .............................................................................................3 8 table 17 system interface ................................................................................................... ......39 table 18 clock/control interface ............................................................................................ ...40 table 19 tertiary cache interface ........................................................................................... ..41 table 20 interrupt interface ................................................................................................ .......42 table 21 jtag interface ..................................................................................................... ......42 table 22 initialization interface ........................................................................................... .......42
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 9 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 1 features  dual issue symmetric superscalar microprocessor with instruction prefetch optimized for system level price/performance ? 300, 350, 400 mhz operating frequency  >600 dhrystone 2.1 mips @ 400 mhz  high-performance system interface  1000 mb per second peak throughput  125 mhz max. freq., multiplexed address/data  supports two outstanding reads with out-of-order return  processor clock multipliers 2, 2.5, 3, 3.5, 4, 4.5, 5, 6, 7, 8, 9  integrated primary and secondary caches  all are 4-way set associative with 32 byte line size  16 kb instruction, 16 kb data, 256 kb on-chip secondary  per line cache locking in primaries and secondary  fast packet cache ? increases system efficiency in networking applications  integrated external cache controller (up to 8 mb)  high-performance floating-point unit ? 800 mflops maximum  single cycle repeat rate for common single-precision operations and some double-pre- cision operations  single cycle repeat rate for single-precision combined multiply-add operations  two cycle repeat rate for double-precision multiply and double-precision combined multiply-add operations  mips iv superset instruction set architecture  data prefetch instruction allows the processor to overlap cache miss latency and instruction execution  single-cycle floating-point multiply-add  integrated memory management unit  fully associative joint tlb (shared by i and d translations)  64/48 dual entries map 128/96 pages  variable page size  embedded application enhancements  specialized dsp integer multiply-accumulate instructions, (mad/madu) and three-operand multiply instruction (mul)  i&d test/break-point (watch) registers for emulation & debug  performance counter for system and software tuning & debug  fourteen fully prioritized vectored interrupts ? 10 external, 2 internal, 2 software  fully static cmos design with dynamic power down logic  rm5271 pin compatible, 304 pin tbga package, 31x31 mm
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 10 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 2 block diagram figure 1 block diagram f pipe m pipe instruction dispatch unit secondary tags set a secondary tags set b secondary tags set d secondary tags set c primary data cache 4-way set associative primary instruction cache 4-way set associative dtag dtlb itag itlb prefetch buffer f pipe register m pipe register store buffer write buffer read buffer pad buffer address buffer load aligner integer register file adder dtlb virtual staln/sh logicals pll/clocks floating-point load/align floating-point register file packer/unpacker comparator floating-point multadd, add, sub, cvt, div, sqrt multiplier array joint tlb coprocessor 0 system/memory control pc incrementer branch pc adder itlb virtual program counter int mult, div, madd floating-point control integer control dva iva extenal cache controller on-chip 256k byte secondary cache, 4-way set associative adder shifter logicals pad bus d bus f-pipe bus m-pipe bus fa bus a/d bus
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 11 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 3 description pmc-sierra ? s rm7000a is a highly integrated symmetric superscalar microprocessor capable of issuing two instructions each processor cycle. it has two high-performance 64-bit integer units as well as a high-throughput, fully pipelined 64-bit floating point unit. the rm7000a integrates 16 kb 4-way set associative instruction and data caches along with an integrated 256 kb 4-way set associative secondary. the primary data and secondary caches are write-back and non-blocking. an optional external tertiary cache provides high-performance capability even in applications with very large data sets. the memory management unit contains a 64/48-entry fully associative tlb and a 64-bit system interface supporting multiple outstanding reads with out-of-order return and hardware prioritized and vectored interrupts. the rm7000a ideally suits high-end embedded control applications such as internetworking, high-performance image manipulation, high-speed printing, and 3-d visualization. the rm7000a is also applicable to the low end workstation market where its balanced integer and floating-point performance and direct support for a large tertiary cache (up to 8 mb) provide outstanding price/ performance.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 12 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 4 hardware overview the rm7000a offers a high-level of integration targeted at high-performance embedded applications. the key elements of the rm7000a are described throughout this section. 4.1 cpu registers the rm7000a cpu contains 32 general purpose registers (gpr), two special purpose registers for integer multiplication and division, and a program counter; there are no condition code bits. figure 2 shows the user visible state. figure 2 cp0 registers 4.2 superscalar dispatch the rm7000a incorporates a superscalar dispatch unit that allows it to issue up to two instructions per cycle. for purposes of instruction issue, the rm7000a defines four classes of instructions: integer, load/store, branches, and floating-point. there are two logical pipelines, the function , or f, pipeline and the memory , or m, pipeline. note however that the m pipe can execute integer as well as memory type instructions. table 1 instruction issue rules general purpose registers 63 0 multiply/divide registers 0630 r1 hi r2 63 0  lo   program counter  63 0 r29 pc r30 r31 f pipe m pipe one of: one of: integer, branch, floating-point, integer mul, div integer, load/store
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 13 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released figure 2 is a simplification of the pipeline section and illustrates the basics of the instruction issue mechanism. figure 3 instruction issue paradigm the figure illustrates that one f pipe instruction and one m pipe instruction can be issued concurrently but that two m pipe or two f pipe instructions cannot be issued. table 2 specifies more completely the instructions within each class. table 2 dual issue instruction classes 4.3 pipeline the logical length of both the f and m pipelines is five stages with state committing in the register write, or w, pipe stage. the physical length of the floating-point execution pipeline is actually seven stages but this is completely transparent to the user. figure 4 shows instruction execution within the rm7000a when instructions are issuing simultaneously down both pipelines. as illustrated in the figure, up to ten instructions can be executing simultaneously. this figure presents a somewhat simplistic view of the processors operation since the out-of-order completion of loads, stores, and long latency floating-point operations can result in there being even more instructions in process than what is shown. integer load/store floating- point branch add, sub, or, xor, shift, etc. lw, sw, ld, sd, ldc1, sdc1, mov, movc, fmov, etc. fadd, fsub, fmult, fmadd, fdiv, fcmp, fsqrt, etc. beq, bne, bczt, bczf, j, etc. f pipe integer m pipe integer f pipe fp m pipe fp cache instruction unit dispatch f pipe ibus m pipe ibus
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 14 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released figure 4 pipeline note that instruction dependencies, resource conflicts, and branches may result in some of the instruction slots being occupied by nop s. 4.4 integer unit the rm7000a implements the mips iv instruction set architecture. additionally, the rm7000a includes two implementation specific instructions not found in the baseline mips iv isa, but that are useful in the embedded market place. these instructions are integer multiply-accumulate (mad) and three-operand integer multiply (mul). the rm7000a integer unit includes thirty-two general purpose 64-bit registers, the hi/lo result registers for two-operand integer multiply/divide operations, and the program counter, or pc. there are two separate execution units, one of which can execute function (f) type instructions and one which can execute memory (m) type instructions. refer to table 1 for the instruction issue rules. note that integer multiply/divide instructions, as well as their corresponding mfhi and mflo instructions, can only be executed in the f type execution unit. within each execution unit the operational characteristics are the same as on previous mips designs with single cycle alu operations (add, sub, logical, shift), one cycle load delay, and an autonomous multiply/divide unit. register file the rm7000a has thirty-two general purpose registers with register location 0 (r0) hard wired to a zero value. these registers are used for scalar integer operations and address calculation. in order to service the two integer execution units, the register file has four read ports and two write ports and is fully bypassed both within and between the two execution units to minimize operation latency in the pipeline. i0 i2 i4 i6 i8 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w one cycle 1i-1r: 2i: 2a-2d: 2r: 1a-2a: 1a: 1a: 1d: 2a: 2w: instruction cache access instruction virtual to physical address translation register file read, bypass calculation, instruction decode, branch address calculation issue or slip decision, branch decision integer add, logical, shift data virtual address calculation data virtual to physical address translation store align register file write data cache access and load align i1 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w i3 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w i5 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w i7 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w i9 2i 1i 1r 2r 1a 2a 1d 2d 1w 2w
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 15 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 4.5 alu the rm7000a has two complete integer alus each consisting of an integer adder/subtractor, a logic unit, and a shifter. table 3 shows the functions performed by the alus for each execution unit. each of these units is optimized to perform all operations in a single processor cycle. table 3 alu operations 4.6 integer multiply/divide the rm7000a has a single dedicated integer multiply/divide unit optimized for high-speed multiply and multiply-accumulate operations. the multiply/divide unit resides in the f type execution unit. table 4 shows the performance of the multiply/divide unit on each operation. table 4 integer multiply/divide operations the baseline mips iv isa specifies that the results of a multiply or divide operation be placed in the hi and lo registers. these values can then be transferred to the general purpose register file using the move-from-hi and move-from-lo ( mfhi / mflo ) instructions. in addition to the baseline mips iv integer multiply instructions, the rm7000a also implements the 3-operand multiply instruction, mul . this instruction specifies that the multiply result go directly to the integer register file rather than the lo register. the portion of the multiply that would have normally gone into the hi register is discarded. for applications where it is known that the upper half of the multiply result is not required, using the mul instruction eliminates the necessity of executing an explicit mflo instruction. the multiply-add instructions, mad and madu , multiply two operands and add the resulting product to the current contents of the hi and lo registers. the multiply-accumulate operation is unit f pipe m pipe adder add, sub add, sub, data address add logic logic, moves, zero shifts (nop) logic, moves, zero shifts (nop) shifter non zero shift non zero shift, store align opcode operand size latency repeat rate stall cycles mult/u, mad/u 16 bit 4 3 0 32 bit 5 4 0 mul 16 bit 4 3 2 32 bit 5 4 3 dmult, dmultu any 9 8 0 div, divd any 36 36 0 ddiv, ddivu any 68 68 0
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 16 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released the core primitive of almost all signal processing algorithms. therefore, using the rm7000a eliminates the need for a separate dsp engine in many embedded applications. 4.7 floating-point coprocessor the rm7000a incorporates a high-performance fully pipelined floating-point coprocessor which includes a floating-point register file and autonomous execution units for multiply/add/convert and divide/square root. the floating-point coprocessor is a tightly coupled execution unit, decoding and executing instructions in parallel with, and in the case of floating-point loads and stores, in cooperation with the m pipe of the integer unit. the superscalar capabilities of the rm7000a allow floating-point computation instructions to issue concurrently with integer instructions. 4.8 floating-point unit the rm7000a floating-point execution unit supports single and double precision arithmetic, as specified in the ieee standard 754. the execution unit is broken into a separate divide/square root unit and a pipelined multiply/add unit. overlap of divide/square root and multiply/add is supported. the rm7000a maintains fully precise floating-point exceptions while allowing both overlapped and pipelined operations. precise exceptions are extremely important in object-oriented programming environments and highly desirable for debugging in any environment. floating-point operations include:  add  subtract  multiply  divide  square root  reciprocal  reciprocal square root  conditional moves  conversion between fixed-point and floating-point format  conversion between floating-point formats  floating-point compare table 5 gives the latencies of the floating-point instructions in internal processor cycles.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 17 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 5 floating point latencies and repeat rates 4.9 floating-point general register file the floating-point general register file (fgr) is made up of thirty-two 64-bit registers. with the floating-point load and store double instructions, ldc1 and sdc1 , the floating-point unit can take advantage of the 64-bit wide data cache and issue a floating-point coprocessor load or store doubleword instruction in every cycle. the floating-point control register file contains two registers; one for determining configuration and revision information for the coprocessor, and one for control and status information. these registers are primarily used for diagnostic software, exception handling, state saving and restoring, and control of rounding modes. to support superscalar operations the fgr has four read ports and two write ports and is fully bypassed to minimize operation latency in the pipeline. three of the read ports and one write port are used to support the combined multiply-add instruction while the fourth read and second write port allows for concurrent floating-point load or store and conditional move operations. operation latency single/double repeat rate single/double fadd 4 1 fsub 4 1 fmult 4/5 1/2 fmadd 4/5 1/2 fmsub 4/5 1/2 fdiv 21/36 19/34 fsqrt 21/36 19/34 frecip 21/36 19/34 frsqrt 38/68 36/66 fcvt.s.d 4 1 fcvt.s.w 6 3 fcvt.s.l 6 3 fcvt.d.s 4 1 fcvt.d.w 4 1 fcvt.d.l 4 1 fcvt.w.s 4 1 fcvt.w.d 4 1 fcvt.l.s 4 1 fcvt.l.d 4 1 fcmp 1 1 fmov, fmovc 1 1 fabs, fneg 1 1
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 18 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 4.10 system control coprocessor (cp0) the system control coprocessor (cp0) is responsible for the virtual memory sub-system, the exception control system, and the diagnostics capability of the processor. for memory management support, the rm7000a cp0 is logically identical to the rm5200 family. for interrupt exceptions and diagnostics, the rm7000a is a superset of the rm5200 family, implementing additional features described in the following sections on interrupts, test/ breakpoint registers, and performance counters. the memory management unit controls the virtual memory system page mapping. it consists of an instruction address translation buffer (itlb) a data address translation buffer (dtlb), a joint tlb (jtlb), and coprocessor registers used by the virtual memory mapping sub-system. 4.11 system control coprocessor registers the rm7000a incorporates all cp0 registers internally. these registers provide the path through which the virtual memory system ? s page mapping is examined and modified, exceptions are handled, and operating modes are controlled (kernel vs. user mode, interrupts enabled or disabled, cache features). in addition, the rm7000a includes registers to implement a real-time cycle counting facility, to aid in cache and system diagnostics, and to assist in data error detection. to support the non-blocking caches and enhanced interrupt handling capabilities of the rm7000a, both the data and control register spaces of cp0 are supported. in the data register space, which is accessed using the mfc0 and mtc0 instructions, the rm7000a supports the same registers as found in the rm5200 family. in the control space, which is accessed by the previously unused ctc0 and cfc0 instructions, the rm7000a supports five new registers. the first three of these new 32-bit registers support the enhanced interrupt handling capabilities; interrupt control, interrupt priority level lo (ipllo), and interrupt priority level hi (iplhi). these registers are described further in the section on interrupt handling. two other registers, imprecise error 1 and imprecise error 2, have been added to help diagnose bus errors that occur on non-blocking memory references. figure 5 shows the cp0 registers.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 19 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released figure 5 cp0 registers 4.12 virtual to physical address mapping the rm7000a provides three modes of virtual addressing:  user mode  kernel mode  supervisor mode these modes allow system software to provide a secure environment for user processes. bits in the cp0 status register determine which virtual addressing mode is used. in user mode, the rm7000a provides a single, uniform virtual address space of 256 gb (2 gb in 32-bit mode). when operating in the kernel mode, four distinct virtual address spaces, totalling 1024 gb (4 gb in 32-bit mode), are simultaneously available and are differentiated by the high-order bits of the virtual address. the rm7000a processor also supports a supervisor mode in which the virtual address space is 256.5 gb (2.5 gb in 32-bit mode), divided into three regions based on the high-order bits of the virtual address. figure 6 shows the address space layout for 32-bit operations. 0 47 tlb (entries protected from tlbwr) entryhi 10* entrylo0 2* entrylo1 3* pagemask 5* wired 6* random 1* index 0* status 12* cause 13* epc 14* errorepc 30* count 9* compare 11* context 4* watch1 18* prid 15* config 16* ta ghi 29* ta gl o 28* ecc 26* cacheerr 27* badvaddr 8* lladdr 17* watch2 19* xcontext 20* used for memory management used for exception processing perf ctr cntrl 22* perf counter 25* watch mask 24* * register number intcontrol 20* iplhi 19* ipllo 18* control space registers imp error 2 27* imp error 1 26* info 7*
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 20 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released figure 6 kernel mode virtual addressing (32-bit) when the rm7000a is configured for 64-bit addressing, the virtual address space layout is an upward compatible extension of the 32-bit virtual address space layout. 4.13 joint tlb for fast virtual-to-physical address translation, the rm7000a uses a large, fully associative tlb that maps virtual pages to their corresponding physical addresses. as indicated by its name, the jtlb is used for both instruction and data translations. the jtlb is organized as pairs of even/odd entries, and maps a virtual address and address space identifier (asid) into the large, 64 gb physical address space. by default, the jtlb is configured as 48 pairs of even/odd entries. the optional 64 even/odd entry configuration is set at boot time. two mechanisms are provided to assist in controlling the amount of mapped space and the replacement characteristics of various memory regions. first, the page size can be configured, on a per-entry basis, to use page sizes in the range of 4 kb to 16 mb (in 4x multiples). the cp0 pagemask register is loaded with the desired page size of a mapping, and that size is stored into the tlb, along with the virtual address, when a new entry is written. thus, operating systems can create special purpose maps; for example, an entire frame buffer can be memory mapped using only one tlb entry. the second mechanism controls the replacement algorithm when a tlb miss occurs. the rm7000a provides a random replacement algorithm to select a tlb entry to be written with a new mapping. however, the processor also provides a mechanism whereby a system specific number of mappings can be locked into the tlb, thereby avoiding random replacement. this 0xffffffff kernel virtual address space (kseg3) 0xe0000000 mapped, 0.5gb 0xdfffffff supervisor virtual address space (ksseg) 0xc0000000 mapped, 0.5gb 0xbfffffff uncached kernel physical address space (kseg1) 0xa0000000 unmapped, 0.5gb 0x9fffffff cached kernel physical address space (kseg0) 0x80000000 unmapped, 0.5gb 0x7fffffff user virtual address space (kuseg) mapped, 2.0gb
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 21 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released mechanism uses the cp0 wired register and allows the operating system to guarantee that certain pages are always mapped for performance reasons and to avoid a deadlock condition. this mechanism also facilitates the design of real-time systems by allowing deterministic access to critical software. the jtlb also contains information that controls the cache coherency protocol for each page. specifically, each page has attribute bits to determine whether the coherency algorithm is:  uncached  write-back  write-through with write-allocate  write-through without write-allocate  write-back with secondary and tertiary bypass note that both of the write-through protocols bypass both the secondary and the tertiary caches since neither of these caches support writes of less than a complete cache line. these protocols are used for both code and data on the rm7000a with data using write-back or write-through depending on the application. the write-through modes support the same efficient frame buffer handling as the rm5200 family. 4.14 instruction tlb the rm7000a uses a 4-entry instruction tlb (itlb). the itlb offers the following advantages;  minimizes contention for the jtlb  eliminates the critical path of translating through a large associative array  allows instruction address and data address translations to occur in parallel  saves power each itlb entry maps a 4 kb page. the itlb improves performance by allowing instruction address translation to occur in parallel with data address translation. when a miss occurs on an instruction address translation by the itlb, the least-recently used itlb entry is filled from the jtlb. the operation of the itlb is completely transparent to the user. 4.15 data tlb the rm7000a uses a 4-entry data tlb (dtlb) for the same reasons cited above for the itlb. each dtlb entry maps a 4 kb page. the dtlb improves performance by allowing data address translation to occur in parallel with instruction address translation. when a miss occurs on a data address translation, the dtlb is filled from the jtlb. the dtlb refill is pseudo-lru; the least recently used entry of the least recently used pair of entries is filled. the operation of the dtlb is completely transparent to the user. 4.16 cache memory the rm7000a contains integrated primary instruction and data caches that support single cycle access, as well as a large unified secondary cache with a three cycle miss penalty from the primary caches. each primary cache has a 64-bit read path and a 128-bit write path. both caches can be accessed simultaneously. the primary caches provide the integer and floating-point units with an
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 22 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released aggregate bandwidth of 6.4 gb per second at an internal clock frequency of 400 mhz. during an instruction or data primary cache refill, the secondary cache can provide a 64-bit datum every cycle following the initial three cycle latency for a peak bandwidth of 3.6 gb per second. for applications requiring even higher performance, the rm7000a also has a direct interface to a large external tertiary cache. 4.17 instruction cache the rm7000a has an integrated 16 kb, four-way set associative instruction cache that is virtually indexed and physically tagged. the effective physical index eliminates the potential for virtual aliases in the cache. the data array portion of the instruction cache is 64 bits wide and protected by word parity while the tag array holds a 24-bit physical address, 14 control bits, a valid bit, and a single parity bit. by accessing 64 bits per cycle, the instruction cache is able to supply two instructions per cycle to the superscalar dispatch unit. for signal processing, graphics, and other numerical code sequences where a floating-point load or store and a floating-point computation instruction are being issued together in a loop, the entire bandwidth available from the instruction cache is consumed by instruction issue. for typical integer code mixes, where instruction dependencies and other resource constraints restrict the level of parallelism that can be achieved, the extra instruction cache bandwidth is used to fetch both the taken and non-taken branch paths to minimize the overall penalty for branches. a 32-byte (eight instruction) line size is used to maximize the communication efficiency between the instruction cache and the secondary cache, tertiary cache, or memory system. the rm7000a supports cache locking on a per line basis. the contents of each line of the cache can be locked by setting a bit in the tag ram. locking the line prevents its contents from being overwritten by a subsequent cache miss. refills occur only into unlocked cache lines. this mechanism allows the programmer to lock critical code into the cache, thereby guaranteeing deterministic behavior for the locked code sequence. 4.18 data cache the rm7000a has an integrated 16 kb, four-way set associative data cache that is virtually indexed and physically tagged. line size is 32 bytes (8 words). the effective physical index eliminates the potential for virtual aliases in the cache. the data cache is non-blocking; that is, a miss in the data cache does not necessarily stall the processor pipeline. as long as no instruction is encountered which is dependent on the data reference which caused the miss, the pipeline continues to advance. once there are two cache misses outstanding, the processor stalls if it encounters another load or store instruction. the data array portion of the data cache is 64 bits wide and protected by byte parity while the tag array holds a 24-bit physical address, 3 control bits, a two-bit cache state field, and two parity bits. the most commonly used write policy is write-back, which means that a store to a cache line does not immediately cause memory to be updated. this increases system performance by reducing bus traffic and eliminating the bottleneck of waiting for each store operation to finish before issuing a subsequent memory operation. software can, however, select write-through on a per-page basis
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 23 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released when appropriate, such as for frame buffers. cache protocols supported for the data cache are as follows: 1. uncached reads to addresses in a memory area identified as uncached do not access the cache. writes to such addresses are written directly to main memory without updating the cache. 2. write-back loads and instruction fetches first search the cache, reading the next memory hierarchy level only if the desired data is not cache resident. on data store operations, the cache is first searched to determine if the target address is cache resident. if it is resident, the cache contents are updated and the cache line is marked for later write-back. if the cache lookup misses, the target line is first brought into the cache, afterwhich the write is performed as above. 3. write-through with write allocate loads and instruction fetches first search the cache, reading from memory only if the desired data is not cache resident; write-through data is never cached in the secondary or tertiary caches. on data store operations, the cache is first searched to determine if the target address is cache resident. if it is resident, the primary cache contents are updated and main memory is written, leaving the write-back bit of the cache line unchanged; no writes occur to the secondary or tertiary caches. if the cache lookup misses, the target line is first brought into the cache, afterwhich the write is performed as above. 4. write-through without write allocate loads and instruction fetches first search the cache, reading from memory only if the desired data is not cache resident; write-through data is never cached in the secondary or tertiary caches. on data store operations, the cache is first searched to determine if the target address is cache resident. if it is resident, the cache contents are updated and main memory is written, leaving the write-back bit of the cache line unchanged; no writes occur to the secondary or tertiary caches. if the cache lookup misses, only main memory is written. 5. fast packet cache ? (write-back with secondary and tertiary bypass) loads and instruction fetches first search the primary cache, reading from memory only if the desired data is not resident; the secondary and tertiary caches are not searched. on data store operations, the primary cache is first searched to determine if the target address is resident. if it is resident, the cache contents are updated, and the cache line marked for later write-back. if the cache lookup misses, the target line is first brought into the cache, afterwhich the write is performed as above. associated with the data cache is the store buffer . when the rm7000a executes a store instruction, this single-entry buffer is written with the store data while the tag comparison is performed. if the tag matches, then the data is written into the data cache in the next cycle that the data cache is not accessed (the next non-load cycle). the store buffer allows the rm7000a to execute a store every processor cycle and to perform back-to-back stores without penalty. in the event of a store immediately followed by a load to the same address, a combined merge and cache write occurs such that no penalty is incurred.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 24 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 4.19 secondary cache the rm7000a has an integrated 256 kb, four-way set associative, block write-back secondary cache. the secondary cache has a 32-byte line size, a 64-bit bus width to match the system interface and primary cache bus widths, and is protected with doubleword parity. the secondary cache tag array holds a 20-bit physical address, 2 control bits, a three bit cache state field, and two parity bits. by integrating a secondary cache, the rm7000a is able to decrease the latency of a primary cache miss without significantly increasing the number of pins and the amount of power required by the processor. from a technology point of view, integrating a secondary cache leverages cmos technology by using silicon to build the structures that are most amenable to silicon technology; building very dense, low power memory arrays rather than large power hungry i/o buffers. further benefits of an integrated secondary cache are flexibility in the cache organization and management policies that are not practical with an external cache. two previously mentioned examples are the 4-way associativity and write-back cache protocol. a third management policy for which integration affords flexibility is cache hierarchy management. with multiple levels of cache, it is necessary to specify a policy for dealing with cases where two cache lines at level n of the hierarchy could possibly be sharing an entry in level n+1 of the hierarchy. the rm7000a allows entries to be stored in the primary caches that do not necessarily have a corresponding entry in the secondary; the rm7000a does not force the primaries to be a subset of the secondary. for example, if primary cache line a is being filled and a cache line already exists in the secondary for primary cache line b at the location where primary a ? s line would reside, then that secondary entry is replaced by an entry corresponding to primary cache line a and no action occurs in the primary for cache line b. this operation creates the aforementioned scenario where the primary cache line, which initially had a corresponding secondary entry, no longer has such an entry. such a primary line is called an orphan . in general, cache lines at level n+1 of the hierarchy are called parents of level n ? s children . another rm7000a cache management optimization occurs for the case of a secondary cache line replacement where the secondary line is dirty and has a corresponding dirty line in the primary. in this case, since it is permissible to leave the dirty line in the primary, it is not necessary to write the secondary line back to main memory. taking this scenario one step further, a final optimization occurs when the aforementioned dirty primary line is replaced by another line and must be written back. in this case it is written directly to memory, bypassing the secondary cache. 4.20 secondary caching protocols unlike the primary data cache, the secondary cache supports only uncached and block write-back. as noted earlier, cache lines managed with either of the write-through protocols are not placed in the secondary cache. a new caching attribute, write-back with secondary and tertiary bypass , allows the secondary, and tertiary caches to be bypassed entirely. when this attribute is selected, the secondary and tertiary caches are not filled on load misses and are not written on dirty write- backs from the primary cache.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 25 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 4.21 tertiary cache the rm7000a has direct support for an external tertiary cache. the tertiary cache is direct mapped and block write-through with byte parity protection for data. the rm7000a tertiary cache operates identical to the secondary cache of the rm527x while supporting additional size increments to support 4 mb and 8 mb caches. the tertiary interface uses the sysad bus for data and tags while providing a separate bus, tc li n e[ 17 : 0] , for addresses, along with a number of tertiary cache specific control signals. a tertiary read looks nearly identical to a standard processor read except that the tag chip enable signal, tctce* , is asserted concurrently with validout* and release* , initiating a tag probe and indicating to the external controller that a tertiary cache access is being performed. as a result, the external controller monitors the tertiary hit signal, tcmatch . if a hit is indicated the controller aborts the memory read and refrains from acquiring control of the system interface. along with tctce* , the processor also asserts the tag data enable signal, tctde* , which causes the tag rams to latch the sysad address internally for use as the replacement tag if a cache miss occurs. on a tertiary miss, a refill is accomplished with a two signal handshake between the data output enable signal, tcdoe* , which is deasserted by the controller, and the tag and data write enable signal, tccwe* , asserted by the processor. figure 7 illustrates a tertiary cache hit followed by a miss. figure 7 tertiary cache hit and miss other capabilities of the tertiary interface include block write, tag invalidate, and tag probe. for details of these transactions as well as detailed timing waveforms for all the tertiary cache transactions, refer to the rm7000a bus interface specification. the tertiary cache tag can easily be implemented with standard components such as the motorola mcm69t618. the rm7000a cache attributes for the instruction, data, internal secondary, and optional external tertiary caches are summarized in table 6. tcdce* tccwe* tcmatch sysclock sysad tcline[17:0] tctce* addr data1 data2 index data0 addr data0 data3 data1 data0 data1 index tcword[1:0] i0 i1 i2 i0 i3 i0 i1 i2 i3 i1 master processor tertiary (hit) tertiary (miss) system processor tcdoe*
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 26 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 6 cache attributes 4.22 cache locking the rm7000a allows critical code or data fragments to be locked into the primary and secondary caches. the user has complete control over the locking function. for instruction and data fragments in the primary caches, locking is accomplished by setting either or both of the cache lock enable bits and specifying the set in the cp0 ecc register, then executing either a load instruction for data, or a fill_i cache operation for instructions. only sets a and b within each cache can be locked. locking within the secondary works identically to the primaries using a separate secondary lock enable bit and the same set selection field. as with the primaries, only sets a and b can be locked. table 7 summarizes the cache locking capabilities. attribute instruction data secondary tertiary size 16kb 16kb 256kb 512k, 1m, 2m, 4m, or 8m associativity 4-way 4-way 4-way direct mapped replacement algorithm. cyclic cyclic cyclic direct replacement line size 32 byte 32 byte 32 byte 32 byte index vaddr 11..0 vaddr 11..0 paddr 15..0 paddr 22..0 tag paddr 35..12 paddr 35..12 paddr 35..16 paddr 35..19 write policy n.a. write-back, write- through block write-back, bypass block write-through, bypass read policy n.a. non-blocking (2 outstanding) non-blocking (data only, 2 outstanding) non-blocking (data only, 2 outstanding) read order critical word first critical word first critical word first critical word first write order na sequential sequential sequential miss restart following: complete line first double (if waiting for data) n.a. n.a. parity per word per byte per doubleword per byte
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 27 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 7 cache locking control 4.23 cache management to improve the performance of critical data movement operations in the embedded environment, the rm7000a significantly improves the speed of operation of certain critical cache management operations. in particular, the speed of the hit-writeback-invalidate and hit-invalidate cache operations has been improved, in some cases by an order of magnitude, over that of other mips processors. for example, table 8 compares the rm7000a with the r4000 processor. table 8 penalty cycles for the hit-dirty case of hit-writeback-invalidate in table 8 above, if the writeback buffer is full from some previous cache eviction, then n is the number of cycles required to empty the writeback buffer. if the buffer is empty then n is zero. the penalty value in table 8 is the number of processor cycles beyond the one cycle required to issue the instruction that is required to implement the operation. 4.24 primary write buffer writes to secondary cache or external memory, whether cache miss write-backs or stores to uncached or write-through addresses, use the integrated primary write buffer. the write buffer holds up to four 64-bit address and data pairs. the entire buffer is used for a data cache write-back and allows the processor to proceed in parallel with memory update. for uncached and write- through stores, the write buffer significantly increases performance by decoupling the sysad bus transfers from the instruction execution stream. 4.25 system interface the rm7000a provides a high-performance 64-bit system interface which is compatible with the rm5200 family. as an enhancement to the sysad bus interface, the rm7000a allows half- cache lock enable set select activate primary i ecc[27] ecc[28]=0 a ecc[28]=1 b fill_i primary d ecc[26] ecc[28]=0 a ecc[28]=1 b load/store secondary ecc[25] ecc[28]=0 a ecc[28]=1 b fill_i or load/store operation condition penalty rm7000a r4000 hit-writeback- invalidate miss 0 7 hit-clean 3 12 hit-dirty 3+n 14+n hit-invalidate miss 0 7 hit 2 9
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 28 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released integral clock multipliers, thereby providing greater granularity when selecting pipeline and system interface frequencies. the sysad interface consists of a 64-bit address/data bus with 8 check bits and a 9-bit command bus. in addition, there are ten handshake signals and ten interrupt inputs. the interface is capable of transferring data between the processor and memory at a peak rate of 1000 mb/sec with a 125 mhz sysclock. figure 8 shows a typical embedded system using the rm7000a. this example shows a system with a bank of drams, an optional tertiary cache, and an interface asic which provides dram control as well as an i/o port. figure 8 typical embedded system block diagram 4.26 system address/data bus the 64-bit system address data (sysad) bus is used to transfer addresses and data between the rm7000a and the rest of the system. it is protected with an 8-bit parity check bus, sysadc[7:0] . the system interface is configurable to allow easy interfacing to memory and i/o systems of varying frequencies. the data rate and the bus frequency at which the rm7000a transmits data to the system interface are programmable at boot time via mode control bits. in addition, the rate at which the processor receives data is fully controlled by the external device. therefore, either a low cost interface requiring no read or write buffering, or a faster, high-performance interface can be designed to communicate with the rm7000a. 4.27 system command bus the rm7000a interface has a 9-bit system command bus, syscmd[8:0] . the command bus indicates whether the sysad bus carries address or data information on a per-clock basis. if the sysad bus carries address, the syscmd bus indicates the transaction type (for example, a read or write). if the sysad bus carries data, then the syscmd bus contains information about the data (for example, this is the last data word transmitted, or the data contains an error). the syscmd bus is bidirectional to support both processor requests and external requests to the rm7000a. rm7000a memory i/o controller dram flash/ control address x x 72 boot pci bus rom 72 25 latch 72 8 tertiary cache 72 (optional) sysad bus tcline, etc. syscmd
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 29 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released processor requests are initiated by the rm7000a and responded to by an external device. external requests are issued by an external device and require the rm7000a to respond. the rm7000a supports one- to eight-byte transfers as well as 32-byte block transfers on the sysad bus. in the case of a sub-doubleword transfer, the 3 low-order address bits give the byte address of the transfer, and the syscmd bus indicates the number of bytes being transferred. 4.28 handshake signals there are ten handshake signals on the system interface. two of these, rdrdy* and wrrdy* , are driven by an external device to indicate to the rm7000a whether it can accept a new read or write transaction. the rm7000a samples these signals before deasserting the address on read and write requests. extrqst* and release* are used to transfer control of the sysad and syscmd buses from the processor to an external device. when an external device requires control of the bus, it asserts extrqst* . the rm7000a responds by asserting release* to release the system interface to slave state. prqst* and pack* are used to transfer control of the sysad and syscmd buses from the external agent to the processor. these two pins have been added to the sysad interface to support multiple outstanding reads and facilitate non-blocking caches. when the processor needs to reacquire control of the interface, it asserts prqst* . the external device responds by asserting pack* to return control of the interface to the processor. rspswap* is also a new pin and is used by the external agent to indicate to the processor when it is returning data out of order. for example, when there are two outstanding reads, the external agent asserts rspswap* when it is going to return the data for the second read before it returns the data for the first read. rspswap* must be asserted by the external agent two cycles ahead of when it presents data so that the processor has time to switch to the correct address for writes into the tertiary cache. rdtype is another new pin on the interface that indicates whether a read is an instruction read or a data read. when asserted, the reference is an instruction read. when deasserted it is a data read. rdtype is only valid during valid address cycles. validout* and validin* are used by the rm7000a and the external device respectively to indicate that there is a valid command or data on the sysad and syscmd buses. the rm7000a asserts validout* when it is driving these buses with a valid command or data, and the external device drives validin* when it has control of the buses and is driving a valid command or data. 4.29 system interface operation to support non-blocking caches and data prefetch instructions, the rm7000a allows two outstanding reads. an external device may respond to read requests in whatever order it chooses by using the response order indicator pin rspswap* . no more than two read requests are submitted to the external device. support for multiple outstanding reads can be enabled or disabled via a boot-time mode bit. refer to table 16 for a complete list of mode bits. the rm7000a can issue read and write requests to an external device, while an external device can issue null and write requests to the rm7000a.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 30 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released for processor reads, the rm7000a asserts validout* and simultaneously drives the address and read command on the sysad and syscmd buses. if the system interface has rdrdy* asserted, then the processor tristates its drivers and releases the system interface to slave state by asserting release* . the external device can then begin sending data to the rm7000a. figure 9 shows a processor block read request and the external agent read response for a system with either no tertiary cache or a transaction where the tertiary is being bypassed. figure 9 processor block read in figure 9 the read latency is 4 cycles ( validout* to validin* ), and the response data pattern is ddxxdd. figure 10 shows a processor block write where the processor was programmed with write-back data rate boot code 2, or ddxxddxx. finally, figure 11 shows a typical sequence resulting in two outstanding reads both with initial tertiary cache accesses, as explained in the following sequence. 1. the processor issues a read which misses in the tertiary cache. 2. the external agent takes control of the bus in preparation for returning data to the processor. 3. the processor encounters another internal cache miss and therefore asserts prqst* in order to regain control of the bus. 4. the external agent pulses pack* , returning control of the bus to the processor. 5. the processor issues a read for the second miss. 6. the second cycle also misses in the tertiary. 7. the rspswap* pin is asserted to denote the out of order response. not shown in the figure is the completion of the data transfer for the second miss, or any of the data transfer for the first miss. 8. the external agent retakes control of the bus and begins returning data (out of order) for the second miss to the processor sysclock sysad addr data0 data1 data2 data3 syscmd read ndata ndata ndata neod validout* validin* rdrdy* wrrdy* release*
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 31 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released figure 10 processor block write figure 11 multiple outstanding reads 4.30 data prefetch the rm7000a is the first pmc-sierra design to support the mips iv integer data prefetch ( pref ) and floating-point data prefetch ( prefx ) instructions. these instructions are used by the compiler or by an assembly language programmer when it is known or suspected that an upcoming data reference is going to miss in the cache. by appropriately placing a prefetch instruction, the memory latency can be hidden under the execution of other instructions. in cases where the execution of a prefetch instruction would cause a memory management or address error exception the prefetch is treated as a nop . the ? hint ? field of the data prefetch instruction is used to specify the action taken by the instruction. the instruction can operate normally (that is, fetching data as if for a load operation) or it can allocate and fill a cache line with zeroes on a primary data cache miss. sysclock sysad addr data0 data1 data2 data3 syscmd validout* validin* rdrdy* wrrdy* release* write ndata ndata ndata neod prqst* pack* release* tcmatch sysclock sysad syscmd validout* validin* addr 1 data1 data1 read 1 data0 addr 2 data0 data0 2 read 2 ndata master processor tertiary(miss) tertiary(miss) processor data1 2 ndata system system rspswap* 1 2 3 4 5 6 7 8
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 32 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 4.31 enhanced write modes the rm7000a implements two enhancements to the original r4000 write mechanism: write reissue and pipeline writes. the original r4000 allowed a write on the sysad bus every four sysclock cycles. hence for a non-block write, this meant that two out of every four cycles were wait states. pipelined write mode eliminates these two wait states by allowing the processor to drive a new write address onto the bus immediately after the previous data cycle. this allows for higher sysad bus utilization. however, at high frequencies the processor may drive a subsequent write onto the bus prior to the time the external agent deasserts wrrdy* , indicating that it can not accept another write cycle. this can cause the cycle to be aborted. write reissue mode is an enhancement to pipelined write mode and allows the processor to reissue aborted write cycles. if wrrdy* is deasserted during the issue phase of a write operation, the cycle is aborted by the processor and reissued at a later time. in write reissue mode, a rate of one write every two bus cycles can be achieved. pipelined writes have the same two bus cycle write repeat rate, but can issue one additional write following the deassertion of wrrdy* . 4.32 external requests the rm7000a can respond to certain requests issued by an external device. these requests take one of two forms: write requests and null requests. an external device executes a write request when it wishes to update one of the processors writable resources such as the internal interrupt register. a null request is executed when the external device wishes the processor to reassert ownership of the processor external interface. once the external device has acquired control of the processor interface via extrqst* , it can execute a null request after completing an independent transaction between itself and system memory in a system where memory is connected directly to the sysad bus. normally this transaction would be a dma read or write from the i/o system. 4.33 test/breakpoint registers to facilitate hardware and software debugging, the rm7000a incorporates a pair of test/break- point, or watch registers, called watch1 and watch2, each watch register can be separately enabled to watch for a load address, a store address, or an instruction address. all address comparisons are done on physical addresses. an associated register, watch mask, has also been added so that either or both of the watch registers can compare against an address range rather than a specific address. the range granularity is limited to a power of two. when enabled, a match of either watch register results in an exception. if the watch is enabled for a load or store address then the exception is the watch exception as defined for the r4000 by cause exception code twenty-three. if the watch is enabled for instruction addresses then a newly defined instruction watch exception is taken and the cause code is sixteen. the watch register which caused the exception is indicated by cause bits 25:24. table 9 summarizes a watch operation.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 33 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 9 watch control register note that the w1 and w2 bits of the cause register indicate which watch register caused a partic- ular watch exception. 4.34 performance counters to facilitate system tuning, the rm7000a implements a performance counter using two new cp0 registers, perfcount and perfcontrol. the perfcount register is a 32-bit writable counter which causes an interrupt when bit 31 is set. the perfcontrol register is a 32-bit register containing a 5- bit field which selects one of twenty-two event types as well as a handful of bits which control the overall counting function. note that only one event type can be counted at a time and that counting can occur for user code, kernel code, or both. the event types and control bits are listed in table 10. register bit field/function 63 62 61 60:36 35:2 1:0 watch1, 2 store load instr 0 addr 0 31:2 1 0 watch mask mask mask watch 2 mask watch 1
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 34 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 10 performance counter control the performance counter interrupt only occurs when interrupts are enabled in the status register, ie=1, and the interrupt mask bit 13 ( im[13] ) of the coprocessor 0 interrupt control register is set. perfcontrol field description 4:0 event type 00: clock cycles 01: total instructions issued 02: floating-point instructions issued 03: integer instructions issued 04: load instructions issued 05: store instructions issued 06: dual issued pairs 07: branch prefetches 08: external cache misses 09: stall cycles 0a: secondary cache misses 0b: instruction cache misses 0c: data cache misses 0d: data tlb misses 0e: instruction tlb misses 0f: joint tlb instruction misses 10: joint tlb data misses 11: branches taken 12: branches issued 13: secondary cache writebacks 14: primary cache writebacks 15: dcache miss stall cycles (cycles where both cache miss tokens taken and a third address is requested) 16: cache misses 17: fp possible exception cycles 18: slip cycles due to multiplier busy 19: coprocessor 0 slip cycles 1a: slip cycles doe to pending non-blocking loads 1b: write buffer full stall cycles 1c: cache instruction stall cycles 1d: multiplier stall cycles 1e: stall cycles due to pending non-blocking loads - stall start of exception 7:5 reserved (must be zero) 8 count in kernel mode 0: disable 1: enable 9 count in user mode 0: disable 1: enable 10 count enable 0: disable 1: enable 31:11 reserved (must be zero)
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 35 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released since the performance counter can be set up to count clock cycles, it can be used as either a second timer, or a watchdog interrupt. a watchdog interrupt can be used as an aid in debugging system or software ? hangs. ? typically the software is setup to periodically update the count so that no interrupt occurs. when a hang occurs the interrupt ultimately triggers, thereby breaking free from the hang-up. 4.35 interrupt handling in order to provide better real time interrupt handling, the rm7000a provides an extended set of hardware interrupts, each of which can be separately prioritized and separately vectored. in addition to the standard six external interrupt pins, the rm7000a provides four more interrupt pins for a total of ten external interrupts. as described above, the performance counter is also a hardware interrupt source using int[13] . historically in the mips architecture, interrupt 7 ( int[7] ) was used as the timer interrupt. the rm7000a provides a separate interrupt, int[12] , for this purpose, thereby releasing int[7] for use as a pure external interrupt. all interrupts ( int[13:0] ), the performance counter, and the timer, have corresponding interrupt mask bits, im[13..0] , and interrupt pending bits, ip[13..0] , in the status, interrupt control, and cause registers. the bit assignments for the interrupt control and cause registers are shown in table 11 and table 12. the status register has not changed from the rm5200 family and is not shown. the iv bit in the cause register is the global enable bit for the enhanced interrupt features. if this bit is clear then interrupt operation is compatible with the rm5200 family. in the interrupt control register, the interrupt vector spacing is controlled by the spacing field as described below. the interrupt mask field ( im[15:8] ) contains the interrupt mask for interrupts eight through thirteen. im[15:14] are reserved for future use. the timer enable (te) bit is used to gate the timer interrupt to the cause register. if te is set to 0, the timer interrupt is not gated to ip[12]. if te is set to 1, the timer interrupt is gated to ip[12]. the setting for mode bit 11 is used to determine if the timer interrupt replaces the external interrupt (int[5]*) as an input to ip[7] in the cause register. if mode bit 11 is set to 1, the timer interrupt is gated to ip[7]. in order to utilize both the external interrupt (int[5]*) and the internal timer interrupt, mode bit 11 must be set to 0, and te must be set to 1. in this case, the timer interrupt will utilize ip[12], and int[5]* will utilize ip[7]. please also reference the logic diagram for interrupt signals in the rm7000 user manual. the interrupt control register uses im13 to enable the performance counter control. priority of the interrupts is set via two new coprocessor 0 registers called interrupt priority level lo (ipllo) and interrupt priority level hi (iplhi).
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 36 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 11 cause register table 12 interrupt control register table 13 ipllo register table 14 iplhi register in the ipllo and iplhi registers, each interrupt is represented by a four-bit field, thereby allowing each interrupt to be programmed with a priority level from 0 to 13 inclusive. the priorities can be set in any manner, including having all the priorities set exactly the same. priority 0 is the highest level and priority 15 the lowest. the format of the priority level registers is shown in table 13 and table 14 above. the priority level registers are located in the coprocessor 0 control register space. in addition to programmable priority levels, the rm7000a also permits the spacing between interrupt vectors to be programmed. for example, the minimum spacing between two adjacent vectors is 0x20 while the maximum is 0x200. this programmability allows the user to either set up the vectors as jumps to the actual interrupt routines or, if interrupt latency is paramount, to include the entire interrupt routine at one vector. table 15 illustrates the complete set of vector spacing selections along with the coding as required in the interrupt control register bits 4:0. in general, the active interrupt priority, combined with the spacing setting, generates a vector offset which is then added to the interrupt base address of 0x200 to generate the interrupt exception offset. this offset is then added to the exception base to produce the final interrupt vector address. 31 30 29,28 27 26 25 24 23..8 7 6..2 0,1 bd 0 ce 0 w2 w1 iv ip[15..0] 0 exc 0 31..16 15..8 7 6..5 4..0 0 im[15..8] te 0 spacing 31..28 27..24 23..20 19..16 15..12 11..8 7..4 3..0 ipl7 ipl6 ipl5 ipl4 ipl3 ipl2 ipl1 ipl0 31..28 27..24 23..20 19..16 15..12 11..8 7..4 3..0 0 0 ipl13 ipl12 ipl11 ipl10 ipl9 ipl8
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 37 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 15 interrupt vector spacing 4.36 standby mode the rm7000a provides a means to reduce the amount of power consumed by the internal core when the cpu is not performing any useful operations. this state is known as standby mode. executing the wait instruction enables interrupts and causes the processor to enter standby mode. if the sysad bus is currently idle when the wait instruction completes the w pipe stage, the internal processor clock stops, thereby freezing the pipeline. the phase lock loop, or pll, internal timer/counter, and the "wake up" input pins: int[9.0]* , nmi* , extreq* , reset* , and coldreset* continue to operate in their normal fashion. if the sysad bus is not idle when the wait instruction completes the w pipe stage, then the wait is treated as a nop until the bus operation is completed. once the processor is in standby, any interrupt, including the internally generated timer interrupt, causes the processor to exit standby and resume operation where it left off. the wait instruction is typically inserted in the idle loop of the operating system or real time executive. 4.37 jtag interface the rm7000a interface supports jtag boundary scan in conformance with ieee 1149.1. the jtag interface is useful for checking the integrity of the processor ? s pin connections. 4.38 boot-time options the rm7000a operating modes are initialized at power-up by the boot-time mode control interface. the serial boot-time mode control interface operates at a very low frequency ( sysclock divided by 256), allowing the initialization information to be kept in a low cost eprom or system interface asic. 4.39 boot-time modes the boot-time serial mode stream is defined in table 16. bit 0 is presented to the processor as the first bit in the stream when vccok is de-asserted. bit 255 is the last bit transferred. icr[4..0] spacing 0x0 0x000 0x1 0x020 0x2 0x040 0x4 0x080 0x8 0x100 0x10 0x200 others reserved
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 38 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 16 boot time mode stream mode bit description mode bit description 0 reserved (must be zero) 17:16 system configuration identifiers - software visible in processor config[21..20] register 4:1 write-back data rate 0: dddd 1: ddxddx 2: ddxxddxx 3: dxdxdxdx 4: ddxxxddxxx 5: ddxxxxddxxxx 6: dxxdxxdxxdxx 7: ddxxxxxxddxxxxxx 8: dxxxdxxxdxxxdxxx 9-15: reserved 19:18 reserved: must be zero 7:5 sysclock to pclock multiplier mode bit 20 = 0 / mode bit 20 = 1 0: multiply by 2/x 1: multiply by 3/x 2: multiply by 4/x 3: multiply by 5/2.5 4: multiply by 6/x 5: multiply by 7/3.5 6: multiply by 8/x 7: multiply by 9/4.5 20 pclock to sysclock multipliers. 0: integer multipliers (2,3,4,5,6,7,8,9) 1: half integer multipliers (2.5,3.5,4.5) 8 specifies byte ordering. logically ored with bigendian input signal. 0: little endian 1: big endian 23:21 reserved: must be zero 10:9 non-block write control 00: r4000 compatible non-block writes 01: reserved 10: pipelined non-block writes 11: non-block write re-issue 24 jtlb size. 0: 48 dual-entry 1: 64 dual-entry 11 timer interrupt enable/disable 0: external int[5]* gated to ip[7] 1: internal timer interrupt gated to ip[7] 25 on-chip secondary cache control. 0: disable 1: enable 12 enable the external tertiary cache 0: disable 1: enable 26 enable two outstanding reads with out-of- order return 0: disable 1: enable 14:13 output driver strength - 100% = fastest 00: 67% strength 01: 50% strength 10: 100% strength 11: 83% strength 255:27 reserved: must be zero 15 external tertiary cache ram type: 0: dual-cycle deselect (dcd) 1: single-cycle deselect (scd)
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 39 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 5 pin descriptions the following is a list of control, data, clock, tertiary cache, interrupt, and miscellaneous pins of the rm7000a. table 17 system interface pin name type description extrqst* input external request signals that the system interface is submitting an external request. release* output release interface signals that the processor is releasing the system interface to slave state rdrdy* input read ready signals that an external agent can now accept a processor read. wrrdy* input write ready signals that an external agent can now accept a processor write request. validin* input valid input signals that an external agent is now driving a valid address or data on the sysad bus and a valid command or data identifier on the syscmd bus. validout* output valid output signals that the processor is now driving a valid address or data on the sysad bus and a valid command or data identifier on the syscmd bus. prqst* output processor request when asserted this signal requests that control of the system interface be returned to the processor. this is enabled by mode bit 26. pack* input processor acknowledge when asserted, in response to prqst*, this signal indicates to the processor that it has been granted control of the system interface. rspswap* input response swap rspswap* is used by the external agent to signal the processor when it is about to return a memory reference out of order; i.e., of two outstanding memory references, the data for the second reference is being returned ahead of the data for the first reference. in order that the processor will have time to switch the address to the tertiary cache, this signal must be asserted a minimum of two cycles prior to the data itself being presented. note that this signal works as a toggle; i.e., for each cycle that it is held asserted the order of return is reversed. by default, anytime the processor issues a second read it is assumed that the reads will be returned in order; i.e., no action is required if the reads are indeed returned in order. this is enabled by mode bit 26. rdtype output read type during the address cycle of a read request, rdtype indicates whether the read request is an instruction read or a data read.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 40 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 18 clock/control interface sysad(63:0) input/output system address/data bus a 64-bit address and data bus for communication between the processor and an external agent. sysadc(7:0) input/output system address/data check bus an 8-bit bus containing parity check bits for the sysad bus during data cycles. syscmd(8:0) input/output system command/data identifier bus a 9-bit bus for command and data identifier transmission between the processor and an external agent. syscmdp input/output system command/data identifier bus parity for the rm7000a, unused on input and zero on output. pin name type description sysclock input system clock master clock input used as the system interface reference clock. all output timings are relative to this input clock. pipeline operation frequency is derived by multiplying this clock up by the factor selected during boot initialization vccp input vcc for pll quiet vccint for the internal phase locked loop. must be connected to vccint through a filter circuit. vssp input vss for pll quiet vss for the internal phase locked loop. must be connected to vssint through a filter circuit. pin name type description
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 41 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 19 t ertiary cache interface pin name type description tcclr* output tertiary cache block clear requests that all valid bits be cleared in the tag rams. many rams may not support a block clear therefore the block clear capability is not required for the cache to operate. tccwe*(1:0) output tertiary cache write enable asserted to cause a write to the cache. two identical signals are provided to balance the capacitive load relative to the remaining cache interface signals. tcdce*(1:0) output tertiary cache data ram chip enable when asserted this signal causes the data rams to read out their contents. two identical signals are provided to balance the capacitive load relative to the remaining cache interface signals tcdoe* input tertiary cache data ram output enable when asserted this signal causes the data rams to drive data onto their i/o pins. this signal is monitored by the processor to determine when to drive the data ram write enable in a tertiary cache miss refill sequence. tcline(17:0) output tertiary cache line index tcmatch input tertiary cache tag match this signal is asserted by the cache tag rams when a match occurs between the value on its data inputs and the contents of the addressed location in the ram. tctce* output tertiary cache tag ram chip enable when asserted this signal will cause either a probe or a write of the tag rams depending on the state of the tag rams write enable signal. this signal is monitored by the external agent and indicates to it that a tertiary cache access is occurring. tctde* output tertiary cache tag ram data enable when asserted this signal causes the value on the data inputs of the tag ram to be latched into the ram. if a refill of the ram is necessary, this latched value will be written into the tag ram array. latching the tag allows a shared address/data bus to be used without incurring a penalty to re-present the tag during the refill sequence. tctoe* output tertiary cache tag ram output enable when asserted this signal causes the tag rams to drive data onto their i/o pins. tcword(1:0) input/output tertiary cache double word index driven by the processor on cache hits and by the external agent on cache miss refills. tcvalid input/output tertiary cache valid this signal is driven by the processor as appropriate to make a cache line valid or invalid. on tag read operations the tag ram will drive this signal to indicate the line state.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 42 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released table 20 interrupt interface table 21 jtag interface table 22 initialization interface pin name type description int*(9:0) input interrupt ten general processor interrupts, bit-wise ored with bits 9:0 of the interrupt register. nmi* input non-maskable interrupt non-maskable interrupt, ored with bit 15 of the interrupt register (bit 6 in r5000 compatibility mode). pin name type description jtdi input jtag data in jtag serial data in. jtck input jtag clock input jtag serial clock input. jtdo output jtag data out jtag serial data out. jtms input jtag command jtag command signal, signals that the incoming serial data is command data. pin name type description bigendian input big endian / little endian control allows the system to change the processor addressing mode without rewriting the mode rom. vccok input vcc is ok when asserted, this signal indicates to the rm7000a that the vccint power supply has been above the recommended value for more than 100 milliseconds and will remain stable. the assertion of vccok initiates the reading of the boot-time mode control serial stream. coldreset* input cold reset this signal must be asserted for a power on reset or a cold reset. coldreset must be de-asserted synchronously with sysclock. reset* input reset this signal must be asserted for any reset sequence. it may be asserted synchronously or asynchronously for a cold reset, or synchronously to initiate a warm reset. reset must be de-asserted synchronously with sysclock. modeclock output boot mode clock serial boot-mode data clock output at the system clock frequency divided by two hundred and fifty six. modein input boot mode data in serial boot-mode data input.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 43 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 6 absolute maximum ratings 1 symbol rating limits unit v term terminal voltage with respect to vss ? 0.5 2 to +3.9 v t case operating temperature commercial industrial 0 to +85 ? 40 to +85 c c t stg storage temperature ? 55 to +125 c i in dc input current 3 20 ma i out dc output current 4 20 ma notes 1. stresses greater than those listed under absolute maximum ratings may cause per- manent damage to the device. this is a stress rating only and functional operation of the device at these or any other conditions above those indicated in the operational sections of this specification is not implied. exposure to absolute maximum rating conditions for extended periods may affect reliability. 2. v in minimum = -2.0 v for pulse width less than 15 ns. v in should not exceed 3.9 volts. 3. when v in < 0v or v in > vccio 4. not more than one output should be shorted at a time. duration of the short should not exceed 30 seconds.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 44 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 7 recommended operating conditions notes 1. vccio should not exceed vccint by greater than 2.0 v during the power-up sequence. 2. applying a logic high state to any i/o pin before vccint becomes stable is not recommended. 3. as specified in ieee 1149.1 (jtag), the jtms pin must be held high during reset to avoid entering jtag test mode. refer to the rm7000a family users manual, appendix e. 4. vccp must be connected to vccint through a passive filter circuit. see rm7000 family user ? s manual for recommended circuit. grade cpu speed temperature vss vccint vccio vccp commercial 300 - 350 mhz 0 c to +85 c (case) 0v 1.65v 50 mv 3.3 v 150 mv or 2.5 v 200 mv 1.65v 50 mv 400 mhz 0 c to +70 c (case) 0v 1.8v 50 mv 3.3 v 150 mv or 2.5 v 200 mv 1.8v 50 mv industrial 350mhz -40 c to +85 c (case) 0v 1.65 50 mv 3.3 v 150 mv or 2.5 v 200 mv 1.65v 50 mv
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 45 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 8 dc electrical characteristics (v cc io = 3.15v - 3.45v) (v cc io = 2.3v - 2.7v) parameter minimum maximum conditions v ol 0.2v |i out |= 100 a v oh vccio - 0.2v v ol 0.4v |i out | = 2 ma v oh 2.4v v il -0.3v 0.8v v ih 2.0v vccio + 0.3v i in 1 5 a 1 5 a v in = 0 v in = vccio parameter minimum maximum conditions v ol 0.2v |i out |= 100 a v oh 2.1v v ol 0.4v |i out | = 1 ma v oh 2.0 v ol 0.7v |i out | = 2 ma v oh 1.7 v il -0.3v 0.7v v ih 1.7v vccio + 0.3v i in 1 5 a 1 5 a v in = 0 v in = vccio
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 46 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 9 power consumption notes 1. worst case supply voltage (maximum vccint) with worst case temperature (maximum tcase). 2. dhrystone 2.1 instruction mix. 3. i/o supply power is application dependant, but typically <20% of vccint. parameter conditions cpu speed 300 mhz 350 mhz 400 mhz max 1 max 1 max 1 vccint power (mwatts) standby 255 300 370 active maximum with no fpu operation 2 2350 2750 3200 maximum worst case instruction mix 2500 3000 4000
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 47 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 10 ac electrical characteristics 10.1 capacitive load deration 10.2 clock parameters parameter symbol min max units load derate c ld 2 ns/25pf parameter symbol test conditions cpu speed units 300 mhz 350 mhz 400 mhz min max min max min max sysclock high t schigh transition 5ns 3 3 3 ns sysclock low t sclow transition 5ns 3 3 3 ns sysclock frequency 33.3 100 33.3 117 33.13 125 mhz sysclock period t scp 10 30 8.5 30 8 30 ns clock jitter for sysclock t jitterin 150 150 150 ps sysclock rise time t scrise 222ns sysclock fall time t scfall 222ns modeclock period t modeckp 256 256 256 t scp jtag clock period t jtagckp 444t scp note: operation of the rm7000a is only guaranteed with the phase lock loop enabled.
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 48 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 10.3 system interface parameters 10.4 boot-time interface parameters parameter 1 symbol test conditions cpu speed units 300 mhz 350 mhz 400 mhz min max min max min max data output 2,3 t do mode14..13 = 10 5,6 (fastest) 1.0 4.5 1.0 4.5 1.0 4.5 ns mode14..13 = 01 5,6 (slowest) 1.0 5.5 1.0 5.5 1.0 5.5 ns data setup 4 t ds 6 t rise = see above table t fall = see above table 2.5 2.5 2.5 ns data hold 4 t dh 1.0 1.0 1.0 ns notes 1. timings are measured from 0.425 x vccio of clock to 0.425 x vccio of signal for 3.3v i/o. timings are measured from 0.48 x vccio of clock to 0.48 x vccio of signal for 2.5v i/o. 2. capacitive load for all maximum output timings is 50 pf. minimum output timings are for theoretical no load conditions - untested. 3. data output timing applies to all signal pins whether tristate i/o or output only. 4. setup and hold parameters apply to all signal pins whether tristate i/o or input only. 5. only mode 14:13 = 10 is tested and guaranteed. 6. data shown is for 3.3 v i/o. for 2.5 v i/o derate all times by .5 ns. parameter symbol min max units mode data setup t ds 4 sysclock cycles mode data hold t dh 0 sysclock cycles
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 49 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 11 timing diagrams 11.1 clock timing figure 12 clock timing system interface timing (sysad, syscmd, validin*, validout*, etc.) figure 13 input timing figure 14 output timing sysclock t rise t fall t high t low t jitterin t ds t dh data sysclock data t do min t do max sysclock data data data
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 50 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 12 packaging information figure 15 304 tbga drawing body size: 31.0 x 31.0 mm package symbol min nominal max note a 1.45 1.55 1.65 overall thickness a1 0.60 0.65 0.70 ball height a2 0.85 0.90 0.95 body thickness d, e 30.80 31.00 31.20 body size d1, e1 27.94 ball footprint m,n 23 x 23 ball matrix m1 4 number of rows deep b 0.65 0.75 0.85 ball diameter e 1.27 ball pitch aaa 0.15 coplanarity bbb 0.15 parallel f 0.30 0.35 0.40 seating plan clearance p 0.25 encapsulation height theta jc 0.3 deg. c/watt theta ja 13 deg. c/watt @ 0 cfm air flow. note: all dimensions in millimeters unless otherwise indicated. o 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 a b c d e f g h j k l m n p r t u v w y aa ab ac d1, m d e top view bottom view side view o a1 ball corner 1.27 mm 1.27 mm a a1 a2 e1, n e e detail b b detail b detail a aaa f p detail a ink mark
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 51 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 13 rm7000a pinout pin function pin function pin function pin function a1 vccio a2 vssio a3 vssio a4 tcline[11] a5 do not connect a6 vsslo a7 do not connect a8 vsslo a9 sysad[32] a10 sysadc[1] a11 do not connect a12 vsslo a13 vcclnt a14 vcclnt a15 sysad[63] a16 vsslo a17 sysad[61] a18 vsslo a19 do not connect a20 tcline[4] a21 vsslo a22 vsslo a23 vcclo b1 vsslnt b2 vcclo b3 vsslnt b4 vsslo b5 tcline[10] b6 sysad[35} b7 sysad[34] b8 vcclnt b9 sysad[33] b10 sysadc[5] b11 sysadc[0] b12 do not connect b13 sysadc[7] b14 sysadc[6] b15 do not connect b16 sysad[30] b17 sysad[29] b18 sysad[28] b19 tcline[5] b20 vsslo b21 vsslnt b22 vcclo b23 vsslo c1 vsslo c2 vsslnt c3 vcclo c4 vcclo c5 do not connect c6 tcline[9] c7 sysad[3] c8 sysad[2] c9 vcclnt c10 sysad[0] c11 sysadc[4] c12 vcclnt c13 sysadc[3] c14 sysadc[2] c15 sysad[62] c16 vcclnt c17 sysad[60] c18 tcline[6] c19 do not connect c20 vcclo c21 vcclo c22 vsslnt c23 vsslo d1 tcline[13] d2 vsslo d3 vcclo d4 vcclo d5 vcclo d6 vcclo d7 tcline[8] d8 vcclnt d9 vcclo d10 sysad[1] d11 vcclnt d12 vcclo d13 vcclnt d14 sysad[31] d15 vcclo d16 vcclnt d17 tcline[7] d18 vcclo d19 vcclo d20 vcclo d21 vcclo d22 vsslo d23 do not connect e1 vcclnt e2 tcline[14] e3 tcline[12] e4 vcclo e20 vcclo e21 do not connect e22 do not connect e23 tcline[1] f1 vsslo f2 tcline[16] f3 tcline[15] f4 vcclo f20 vcclo f21 tcline[3] f22 tcline[0] f23 vsslo g1sysad[36] g2sysad[4] g3tcline[17] g4vcclnt g20 tcline[2] g21 vcclnt g22 sysad[59] g23 sysad[58] h1 vsslo h2 sysad[37] h3 sysad[5] h4 do not connect h20 vcclnt h21 sysad[27] h22 sysad[26] h23 vsslo j1 sysad[7] j2 sysad[6] j3 vcclnt j4 vcclo j20 vcclo j21 vccint j22 sysad[57] j23 sysad[56] k1 sysad[40] k2 sysad[8] k3 sysad[39] k4 sysad[38] k20 sysad[25] k21 sysad[24] k22 sysad[55] k23 sysad[23] l1 sysad[10] l2 sysad[41] l3 sysad[9] l4 vcclnt l20 vcclnt l21 sysad[54] l22 sysad[22] l23 sysad[53] m1 vsslo m2 sysad[11] m3 sysad[42] m4 vcclo m20 vcclo m21 sysad[52] m22 sysad[21] m23 vsslo
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 52 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released n1 sysad[43] n2 vcclnt n3 sysad[12] n4 sysad[44] n20 sysad[19] n21 sysad[51] n22 vcclnt n23 sysad[20] p1 sysad[13] p2 sysad[45] p3 sysad[14] p4 vcclnt p20 vcclnt p21 sysad[49] p22 sysad[18] p23 sysad[50] r1 sysad[46] r2 sysad[15] r3 sysad[47] r4 vcclo r20 vcclo r21 sysad[16] r22 sysad[48] r23 sysad[17] t1vsslo t2rspswap* t3prqst* t4vcclnt t20 extrqst* t21 vccok t22 bigendlan t23 vsslo u1pack* u2vcclnt u3modeclock u4jtck u20 vcclnt u21 nmi* u22 reset* u23 coldreset* v1vsslo v2jtdo v3jtms v4vcclo v20 vcclo v21 int[9]* v22 vcclnt v23 vsslo w1 jtdi w2 vcclo w3 do not connect w4 vcclo w20vcclo w21int[6]* w22int[8]* w23vcclnt y1 do not connect y2 vsslo y3 vcclo y4 vcclo y5 vcclo y6 vcclo y7 rdrdy* y8 release* y9 vcclo y10 tcword[0] y11 vcclnt y12 vcclo y13 syscmd[5] y14 vcclnt y15 vcclo y16 vcclnt y17 int[2]* y18 vcclo y19 vcclo y20 vcclo y21 vcclo y22 vsslo y23 int[7]* aa1 vsslo aa2 vsslnt aa3 vcclo aa4 vcclo aa5 do not connect aa6 tcmatch aa7 validout* aa8 sysclock aa9 vcclnt aa10 do not connect aa11 do not connect aa12 syscmd[0] aa13 syscmd[4] aa14 syscmd[8] aa15 tctce* aa16 tcvalid aa17 vcclnt aa18 int[3]* aa19 do not connect aa20 vcclo aa21 vcclo aa22 vsslnt aa23 vsslo ab1 vsslo ab2 vcclo ab3 vsslnt ab4 vsslo ab5 modeln ab6 validin* ab7 vccp ab8 vcclnt ab9 vcclnt ab10 tccwe[0]* ab11 tcdce[0]* ab12 syscmd[1] ab13 syscmd[3] ab14 syscmd[7] ab15 tcclr* ab16 tctde* ab17 tcdoe* ab18 int[0]* ab19 int[4]* ab20 vsslo ab21 vsslnt ab22 vcclo ab23 vsslnt ac1 vcclo ac2 vsslnt ac3 vsslo ac4 rdtype ac5 wrrdy* ac6 vsslo ac7 vssp ac8 vsslo ac9 tcword[1] ac10 tccwe[1]* ac11 tcdce[1]* ac12 vsslo ac13 syscmd[2] ac14 syscmd[6] ac15 syscmdp ac16 vsslo ac17 tctoe* ac18 vsslo ac19 int[1]* ac20 int[5]* ac21 vsslo ac22 vsslo ac23 vcclo pin function pin function pin function pin function
proprietary and confidential to pmc-sierra, inc and for its customer ? s internal use 53 document id: pmc-2002227, issue 2 rm7000a ? microprocessor with on-chip secondary cache data sheet released 14 ordering information rm7000a -123 t i temperature grade: (blank) = commercial i = industrial package type: t = tbga device maximum speed device type a = 0.18 micron process geometry valid combinations RM7000A-300T rm7000a-350t rm7000a-400t rm7000a-350ti


▲Up To Search▲   

 
Price & Availability of RM7000A-300T

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X